package com.pureut.storage.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.sale.system.api.domain.SysAuxiliary;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

/***
 * 来料打印 出参
 * Author:C
 * Date:2022/12/26 14:51
 * @DESC
 */
@Data
@Accessors(chain = true)
public class IncomingMaterialPrintingDto {

    /**
     * id
     */
    private long id;

    /**
     * 物料id
     */
    private String materialId;

    /**
     * 租户id
     */
    private Long tenantId;

    /**
     * 入库单号
     */
    private String receiptNo;

    /**
     * 批次号
     */
    private String batchNo;

    /**
     * 打印状态
     */
    private int printStatus;

    /**
     * 打印状态
     */
    private String printStatusDict;

    /**
     * 单据类型
     */
    private String documentType;

    /**
     * 单据类型
     */
    private String documentTypeDict;

    /**
     * 供应商id
     */
    private long supplierId;

    /**
     * 供应商
     */
    private String supplierName;

    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * 加工商编码
     */
    private String converterCode;

    /**
     * 加工商名称
     */
    private String converterName;

    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 客户编码
     */
    private String customerCode;

    /**
     * 本批数量
     */
    private long quantityBatch;

    /**
     * 已打印数量
     */
    private long printedQuantity;

    /**
     * 开单人
     */
    private String createBy;

    /**
     * 开单时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 打印人
     */
    private String printBy;

    /**
     * 打印时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date printTime;

    /**
     * 净重
     */
    private double netWeight;

    /**
     * 平均净重
     */
    private double averageNetWeight;

    /**
     * 物料编码
     */
    private String materialCode;

    /**
     * 物料名称
     */
    private String materialName;

    /**
     * 物料规格
     */
    private String materialSpec;

    /**
     * 产地
     */
    private String materialPlace;

    /**
     * 单位
     */
    private String materialUnit;

    /**
     * 单位
     */
    private String unitDict;

    /**
     * 辅助属性
     */
    private List<SysAuxiliary> auxiliaryAttribute;

    /**
     * 单位转换
     */
    private String unitConversion;
}
